#ifndef _LINKSTACK_H_
#define _LINKSTACK_H_

typedef char StackDataType;
typedef struct node
{
    StackDataType data;
    struct node *next;
    struct node *prev;
}NODE;
typedef struct linkstack
{
    int count;
    NODE *bottom;
    NODE *top;
}LINKSTACK;

LINKSTACK *InitStack();
void push(LINKSTACK *l,StackDataType data);
StackDataType pop(LINKSTACK *l);
StackDataType GetTop(LINKSTACK *l);
int StackLen(LINKSTACK *l);
void DestroyStack(LINKSTACK *list);
void ClearStack(LINKSTACK *l);
void PrintLinkStack(LINKSTACK *l);

#endif
